From fac471c4934a960b30118fa6a45651532cdb6e81 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Wed, 29 Sep 2021 14:03:55 +0200 Subject: [PATCH] wireless: process and close script file descriptor when rerunning setup On reloading, setup is called without a teardown, so the previous fd might still be open. Clear it to avoid a leak. Signed-off-by: Felix Fietkau --- wireless.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/wireless.c b/wireless.c index 9c49da0..dafd49a 100644 --- a/wireless.c +++ b/wireless.c @@ -431,6 +431,9 @@ wireless_device_run_handler(struct wireless_device *wdev, bool up) argv[i] = NULL; if (up && pipe(fds) == 0) { + if (wdev->script_proc_fd.fd >= 0) + wireless_close_script_proc_fd(wdev); + wdev->script_proc_fd.fd = fds[0]; uloop_fd_add(&wdev->script_proc_fd, ULOOP_READ | ULOOP_EDGE_TRIGGER); -- 2.30.2